Summary of Group Objects
C Summary
Constants
#define kQ3GroupTypeDisplay Q3_OBJECT_TYPE('d','s','p','g') #define kQ3GroupTypeInfo Q3_OBJECT_TYPE('i','n','f','o') #define kQ3GroupTypeLight Q3_OBJECT_TYPE('l','g','h','g') #define kQ3DisplayGroupTypeIOProxy Q3_OBJECT_TYPE('i','o','p','x') #define kQ3DisplayGroupTypeOrdered Q3_OBJECT_TYPE('o','r','d','g') typedef enum TQ3DisplayGroupStateMasks { kQ3DisplayGroupStateNone = 0, kQ3DisplayGroupStateMaskIsDrawn = 1 << 0, kQ3DisplayGroupStateMaskIsInline = 1 << 1, kQ3DisplayGroupStateMaskUseBoundingBox = 1 << 2, kQ3DisplayGroupStateMaskUseBoundingSphere = 1 << 3, kQ3DisplayGroupStateMaskIsPicked = 1 << 4, kQ3DisplayGroupStateMaskIsWritten = 1 << 5 } TQ3DisplayGroupStateMasks;Data Types
typedef struct TQ3GroupPositionPrivate *TQ3GroupPosition; typedef unsigned long TQ3DisplayGroupState;Group Objects Routines
Creating Groups
TQ3GroupObject Q3Group_New(void); TQ3GroupObject Q3LightGroup_New ( void); TQ3GroupObject Q3DisplayGroup_New ( void); TQ3GroupObject Q3InfoGroup_New(void); TQ3GroupObject Q3OrderedDisplayGroup_New ( void); TQ3GroupObject Q3IOProxyDisplayGroup_New ( void);Managing Groups
TQ3ObjectType Q3Group_GetType(TQ3GroupObject group); TQ3Status Q3Group_CountObjects(TQ3GroupObject group, unsigned long *nObjects); TQ3Status Q3Group_CountObjectsOfType ( TQ3GroupObject group, TQ3ObjectType isType, unsigned long *nObjects); TQ3GroupPosition Q3Group_AddObject ( TQ3GroupObject group, TQ3Object object); TQ3GroupPosition Q3Group_AddObjectBefore ( TQ3GroupObject group, TQ3GroupPosition position, TQ3Object object); TQ3GroupPosition Q3Group_AddObjectAfter ( TQ3GroupObject group, TQ3GroupPosition position, TQ3Object object); TQ3Status Q3Group_GetPositionObject ( TQ3GroupObject group, TQ3GroupPosition position, TQ3Object *object); TQ3Status Q3Group_SetPositionObject ( TQ3GroupObject group, TQ3GroupPosition position, TQ3Object object); TQ3Object Q3Group_RemovePosition ( TQ3GroupObject group, TQ3GroupPosition position); TQ3Status Q3Group_EmptyObjects(TQ3GroupObject group); TQ3Status Q3Group_EmptyObjectsOfType ( TQ3GroupObject group, TQ3ObjectType isType);Managing Display Groups
TQ3ObjectType Q3DisplayGroup_GetType ( TQ3GroupObject group); TQ3Status Q3DisplayGroup_GetState ( TQ3GroupObject group, TQ3DisplayGroupState *state); TQ3Status Q3DisplayGroup_SetState ( TQ3GroupObject group, TQ3DisplayGroupState state); TQ3Status Q3DisplayGroup_Submit ( TQ3GroupObject group, TQ3ViewObject view);Getting Group Positions
TQ3Status Q3Group_GetFirstPosition ( TQ3GroupObject group, TQ3GroupPosition *position); TQ3Status Q3Group_GetFirstPositionOfType ( TQ3GroupObject group, TQ3ObjectType isType, TQ3GroupPosition *position); TQ3Status Q3Group_GetLastPosition ( TQ3GroupObject group, TQ3GroupPosition *position); TQ3Status Q3Group_GetLastPositionOfType ( TQ3GroupObject group, TQ3ObjectType isType, TQ3GroupPosition *position); TQ3Status Q3Group_GetNextPosition ( TQ3GroupObject group, TQ3GroupPosition *position); TQ3Status Q3Group_GetNextPositionOfType ( TQ3GroupObject group, TQ3ObjectType isType, TQ3GroupPosition *position); TQ3Status Q3Group_GetPreviousPosition ( TQ3GroupObject group, TQ3GroupPosition *position); TQ3Status Q3Group_GetPreviousPositionOfType ( TQ3GroupObject group, TQ3ObjectType isType, TQ3GroupPosition *position);Getting Object Positions
TQ3Status Q3Group_GetFirstObjectPosition ( TQ3GroupObject group, TQ3Object object, TQ3GroupPosition *position); TQ3Status Q3Group_GetLastObjectPosition ( TQ3GroupObject group, TQ3Object object, TQ3GroupPosition *position); TQ3Status Q3Group_GetNextObjectPosition ( TQ3GroupObject group, TQ3Object object, TQ3GroupPosition *position); TQ3Status Q3Group_GetPreviousObjectPosition ( TQ3GroupObject group, TQ3Object object, TQ3GroupPosition *position);Errors
kQ3ErrorInvalidPositionForGroup
No such position in the group kQ3ErrorInvalidObjectForGroup No such object in the group kQ3ErrorInvalidObjectForPosition No such object in the position